package com.ctsi.service;

import com.ctsi.common.ResultVO;
import com.ctsi.entity.SysMenuOrg;
<<<<<<< HEAD
import com.ctsi.ssdc.admin.domain.CscpUser;
=======
import com.ctsi.entity.req.AddSysUserMenuOrgReq;
>>>>>>> 68aa1d90d2566d16418fa4b72fc5cda36fdfbb57

import java.util.List;

public interface SysMenuOrgService {

    /**
     * 机构查询接口
     * @param id
     * @return
     */
    ResultVO selectSysMenuByOrgId(Long id);

    /**
     * 添加组织机构接口
     * @param req
     * @return
     */
    ResultVO insertSysMenuOrg(AddSysUserMenuOrgReq req);

    /**
     * 更新组织机构接口
     * @param sysMenuOrg
     * @return
     */
    ResultVO updateSysMenuOrgByOrgId(SysMenuOrg sysMenuOrg);

    /**
     * 删除组织机构接口
     * @param id
     * @return
     */
    ResultVO deleteSysMenuByOrgId(Long id);

    /*
     * 查询组织机构列表
     * param [sysMenuOrg]
     * return com.ctsi.common.ResultVO
     * createTime 2021/4/12 10:27
     **/
    ResultVO getlist(SysMenuOrg sysMenuOrg);

    /**
     * 查询组织机构（排除节点）
     * param [id]
     * return com.ctsi.common.ResultVO<java.util.List<com.ctsi.common.ResultVO>>
     * createTime 2021/4/12 11:40
     **/
    ResultVO<List<SysMenuOrg>>excludeChild(Long id);


    /**
     * 查询指定机构的用户
     * param [id]
     * return com.ctsi.common.ResultVO<java.util.List<com.ctsi.ssdc.admin.domain.CscpUser>>
     * createTime 2021/4/13 10:14
     **/
    ResultVO<List<CscpUser>> selectUserlist(Long id);

    /**
     * 查询角色对应的机构信息
     * param [id]
     * return com.ctsi.common.ResultVO<java.util.List<com.ctsi.ssdc.admin.domain.CscpUser>>
     * createTime 2021/4/13 11:13
     **/
    ResultVO<List<SysMenuOrg>> selectOrgList(Long id);
}
